home *** CD-ROM | disk | FTP | other *** search
- public class Style12Parser {
- private int ctm;
- private String whitename;
- private String blackname;
- private String previousmoveverbose;
- private String previousmovepretty;
- private String timepreviousmove;
- private String boardstr;
- private int orientation = 0;
- private char[] boardarray = new char[90];
-
- private int calcIndex(int var1) {
- if (this.orientation == 0) {
- return var1;
- } else {
- int var2 = (9 - var1 / 10) * 10;
- var2 += 9 - var1 % 10;
- return var2;
- }
- }
-
- public String getBlackName() {
- return this.blackname;
- }
-
- public int getBoardOrientation() {
- return this.orientation;
- }
-
- public int getColorPos(int var1) {
- return Character.isUpperCase(this.boardarray[this.calcIndex(var1)]) ? 1 : 0;
- }
-
- public int getColorToMove() {
- return this.ctm;
- }
-
- public int getPiecePos(int var1) {
- switch ((byte)Character.toUpperCase(this.boardarray[this.calcIndex(var1)])) {
- case 66:
- return 4;
- case 67:
- case 68:
- case 69:
- case 70:
- case 71:
- case 72:
- case 73:
- case 74:
- case 76:
- case 77:
- case 79:
- default:
- return 0;
- case 75:
- return 6;
- case 78:
- return 3;
- case 80:
- return 1;
- case 81:
- return 5;
- case 82:
- return 2;
- }
- }
-
- public String getPreviousMovePretty() {
- return this.previousmovepretty;
- }
-
- public String getPreviousMoveVerbose() {
- return this.previousmoveverbose;
- }
-
- public String getTimePreviousMove() {
- return this.timepreviousmove;
- }
-
- public String getWhiteName() {
- return this.whitename;
- }
-
- public boolean parseStyle12(String var1) {
- try {
- String var2 = var1.substring(var1.indexOf(60));
- StringTokenizer var3 = new StringTokenizer(var2);
-
- for(String var4 = (String)var3.nextElement(); !var4.equals("<12>"); var4 = (String)var3.nextElement()) {
- }
-
- String var9 = "";
-
- for(int var5 = 0; var5 < 8; ++var5) {
- var9 = var9 + (String)var3.nextElement() + " ";
- }
-
- this.readBoardString(var9);
- var9 = (String)var3.nextElement();
- if (var9.equals("B")) {
- this.ctm = 0;
- }
-
- if (var9.equals("W")) {
- this.ctm = 1;
- }
-
- for(int var6 = 0; var6 < 7; ++var6) {
- var3.nextElement();
- }
-
- this.whitename = (String)var3.nextElement();
- this.blackname = (String)var3.nextElement();
-
- for(int var7 = 0; var7 < 8; ++var7) {
- var3.nextElement();
- }
-
- this.previousmoveverbose = (String)var3.nextElement();
- this.timepreviousmove = (String)var3.nextElement();
- this.previousmovepretty = (String)var3.nextElement();
- var9 = (String)var3.nextElement();
- if (var9.equals("0")) {
- this.orientation = 0;
- }
-
- if (var9.equals("1")) {
- this.orientation = 1;
- }
-
- return true;
- } catch (Exception var8) {
- return false;
- }
- }
-
- private void readBoardString(String var1) {
- int var2 = 0;
-
- for(int var3 = 8; var3 > 0; --var3) {
- for(int var4 = 1; var4 < 10; ++var4) {
- if (var4 % 9 != 0) {
- this.boardarray[var4 * 10 + var3] = var1.charAt(var2);
- }
-
- ++var2;
- }
- }
-
- }
- }
-